package com.anolesoft.amljmes.billing.dto;

import java.time.LocalDateTime;

import com.alibaba.fastjson.JSON;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 开单信息查询条件DTO
 * @author 韩峰
 *
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class AmBillingCondition {
	private String objuid;//主键
	private String pacrNo;//制造记录条码
	private String aircraftType;//机型
	private String partDrawingNo;//零件图号
	private String partName;//零件名称
	private String dispatchNo;//派工号
	private String quantity;//数量
	private String handoverCategory;//移交类别
	private String workshopName;//外表车间
	private String billingUser;//开单人
	private String billingDeft;//开单部门
	private String billingNotes;//开单备注
//	@JsonFormat(pattern="yyyy-MM-dd",timezone = "GTM+8")
//@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private LocalDateTime billingTime;//开单时间
//	@JsonFormat(pattern="yyyy-MM-dd",timezone = "GTM+8")
//@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private LocalDateTime billingTime2;//开单时间(段)
	private String receiveUser;//接收人
	private String receiveDept;//接收部门
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private LocalDateTime receiveTime;//接收时间
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private LocalDateTime receiveTime2;//接收时间2
	private String receiveNotes;//接收备注
	private String receiveState;//接收状态
	private String factoryId;//厂代号
	private String refuseReason;//拒绝原因
	private Integer queryType;//查询类别
	private String cUser;//创建人
	private LocalDateTime cTime;//创建时间
	private LocalDateTime cTime2;//创建时间2
	private String mUser;//修改人
	private LocalDateTime mTime;//修改时间
	private Integer pageNo; //页数
	private Integer pageSize; //每页显示条数
	private String placeDept;//所在部门
	
	public static void main(String[] args) {
		AmBillingCondition amBilingCondition = new AmBillingCondition();
		amBilingCondition.setPacrNo("1");
		amBilingCondition.setBillingTime(LocalDateTime.now());
		amBilingCondition.setBillingTime2(LocalDateTime.now().plusDays(1));
		System.out.println(">>>>:"+JSON.toJSONString(amBilingCondition));
	}
}
